As it is generally known, the World Wide Web (“Web”) is a major service on the Internet. Computer systems acting as Web servers store Web page documents that may include text, graphics, animations, videos, and other content. Web pages are accessed by client computer users via Web browser software, such as Internet Explorer® provided by Microsoft, or Netscape Navigator® provided by Netscape Communications Corp., and others. The browser program renders Web pages on the user's screen, and automatically invokes additional software as needed. Many software programs running over the Web (“Web applications”) are provided through browser programs. Web applications also often require some type of user authentication, such as a user name and password, for a user to establish a user session. These user sessions may be limited in time, and therefore can expire, causing the user to have to re-authenticate.
Web applications may involve the submission of significant amounts of data from users through Web forms, consisting of formatted screen displays designed for inputting information to a program. A problem in existing systems is that when a user submits a Web form after a user session has expired, the data entered into the form is typically lost, and the user encounters a login page. When opening the login page, such as a dialog box, existing systems also cause the login page to be displayed within a window having a window size that is not conducive to entry of the login information.
Some J2EE (Java 2 Platform, Enterprise Edition) Web servers and Web applications offer a solution in which the data posted by the user is saved at the Web application server. The server then presents a login page, and continues the original post once the proper login information has been entered. One drawback to this approach is that if the proper username and password are not immediately entered, the posted data will still be lost. Other Web Servers do not offer even such limited capability to retain posted data on an HTTP post when a session has expired.
It would therefore be desirable to have a new system for processing Web forms that enables data entered into a Web form to be preserved across the expiration of a user session, and that gracefully reestablishes an expired browser session.